home *** CD-ROM | disk | FTP | other *** search
- /* GadTools layout toolkit
- **
- ** Copyright © 1993-1995 by Olaf `Olsen' Barthel
- ** Freely distributable.
- **
- ** :ts=4
- */
-
- #include "gtlayout_global.h"
-
- #ifdef DO_MENUS
-
- /* LTP_FillSub(struct MenuItem *Item):
- *
- * Fill in the submenu item IDs.
- */
-
- VOID __regargs
- LTP_FillSub(struct MenuItem *Item)
- {
- ULONG Count = 0;
- ItemNode *Node;
-
- do
- {
- Node = (ItemNode *)((ULONG)Item - sizeof(struct MinNode));
-
- Node -> MenuCode = NOMENU | NOITEM | SHIFTSUB(Count);
-
- Count++;
- }
- while(Item = Item -> NextItem);
- }
-
- /* FillItem(struct MenuItem *Item):
- *
- * Fill in the menu item IDs.
- */
-
- VOID __regargs
- LTP_FillItem(struct MenuItem *Item)
- {
- ULONG Count = 0;
- ItemNode *Node;
-
- do
- {
- Node = (ItemNode *)((ULONG)Item - sizeof(struct MinNode));
-
- Node -> MenuCode = NOMENU | SHIFTITEM(Count) | NOSUB;
-
- if(Item -> SubItem)
- LTP_FillSub(Item -> SubItem);
-
- Count++;
- }
- while(Item = Item -> NextItem);
- }
-
- /* LTP_FillMenu(struct Menu *Menu):
- *
- * Fill in the menu IDs.
- */
-
- VOID __regargs
- LTP_FillMenu(struct Menu *Menu)
- {
- ULONG Count = 0;
- MenuNode *Node;
-
- do
- {
- Node = (MenuNode *)((ULONG)Menu - sizeof(struct MinNode));
-
- Node -> MenuCode = SHIFTMENU(Count) | NOITEM | NOSUB;
-
- if(Menu -> FirstItem)
- LTP_FillItem(Menu -> FirstItem);
-
- Count++;
- }
- while(Menu = Menu -> NextMenu);
- }
-
- #endif /* DO_MENUS */
-